import cv2
import matplotlib.pyplot as plt
import numpy as np

gray = cv2.imread('./text1.png')
# gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
# 二值化
ret, b1 = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)

# 方法一：
    # erode（二值化图像，内核，原图的复制，锚点，腐蚀次数，边界填充的方法）
        # 内核：矩形（RECT） 十字形（cross） 椭圆（ELLIPSE）
        # 锚点：默认（-1，-1） 内核中心位置（中心位置可以自动求出，不需要赋值）
        # 边界填充的方法：常用临近值法
kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(3,3))
erode_img = cv2.erode(b1,kernel)
dilate_img = cv2.dilate(b1,kernel)

plt.subplot(131)
plt.title('SRC')
plt.axis('off')
plt.imshow(b1,cmap='gray')
plt.subplot(132)
plt.title('ERODE')
plt.axis('off')
plt.imshow(erode_img,cmap='gray')
plt.subplot(133)
plt.title('DILATE')
plt.axis('off')
plt.imshow(dilate_img,cmap='gray')

plt.show()